package cn.topevery.garden.entity.dto.flow;

//import cn.topevery.garden.entity.vo.UploadFileVO;

import cn.topevery.garden.entity.po.event.EventInfoFile;
import hw.topevery.af.entity.enums.ReceiveTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;

/**
 * @author eric.yang
 */
@Data
@Accessors(chain = true)
public class SendActPara {
    private List<EventInfoFile> fileList;

    @NotBlank(message = "当前环节不为空")
    @ApiModelProperty("当前环节实例id")
    private String curActInstId;

    @NotBlank(message = "下一环节不为空")
    @ApiModelProperty("环节标识id")
    private String activityIdentifier;

    @NotEmpty(message = "接收对象不为空")
    @ApiModelProperty("接收对象id")
    private String receiverId;

    @NotEmpty(message = "接收对象不为空")
    @ApiModelProperty("接收对象名称")
    public String receiverName;

    @NotNull(message = "接收对象不为空")
    @ApiModelProperty("接收对象类型")
    private ReceiveTypeEnum receiverType;

    @ApiModelProperty("环节用时，业务需要主动输入时限的时候用此字段")
    public Integer limit;

    @ApiModelProperty("需要传键值对的用此参数")
    public Map<String, String> extKeyValues;

    @ApiModelProperty("案件id")
    private String evtId;

    @ApiModelProperty("审核：1通过，2不通过")
    private byte auditResult;

    @ApiModelProperty("办理意见")
    private String content;

    @ApiModelProperty(hidden = true, value = "办理用户id")
    private String userId;

    @ApiModelProperty(hidden = true, value = "办理用户名称")
    private String userName;

    @ApiModelProperty(hidden = true, value = "办理时间")
    private LocalDateTime dealTime;

    @ApiModelProperty(hidden = true, value = "办理用时")
    private Integer usedTime;
}
